Solving Demand Versions of Interprocedural Analysis Problems
نویسنده
چکیده
This paper concerns the solution of demand versions of interprocedural analysis problems. In a demand version of a program-analysis problem, some piece of summary information (e.g., the dataflow facts holding at a given point) is to be reported only for a single program element of interest (or a small number of elements of interest). Because the summary information at one program point typically depends on summary information from other points, an important issue is to minimize the number of other points for which (transient) summary information is computed and/or the amount of information computed at those points. The paper describes how algorithms for demand versions of program-analysis problems can be obtained from their exhaustive counterparts essentially for free, by applying the so-called “magic-sets” transformation that was developed in the logic-programming and deductive-database communities.
منابع مشابه
Demand Interprocedural Program Analysis Using Logic Databases
Interprocedural analysis concerns the static examination of a program that consists of multiple procedures. Its purpose is to determine certain kinds of summary information associated with the elements of a program (such as reaching definitions, available expressions, live variables, etc.). Most treatments of interprocedural analysis address the exhaustive version of the problem: summary inform...
متن کاملSolving the Unit Commitment Problem Using Modified Imperialistic Competition Algorithm
One of the most important problems for power system operation is unit commitment (UC), for which different constraints should be satisfied. UC is a nonlinear and large-scale problem; thus, using the evolutionary algorithms has been considered for solving the problem. In this paper, the solution of the UC problem was investigated using Modified Imperialistic Competition Algorithm (MICA). Simula...
متن کاملDemand-Driven Analysis of Explicitly Parallel Programs: An Approach Based on Reverse Data-Flow Analysis
Demand-driven data-flow analysis (DD-DFA) has been pioneered in the field of interprocedural analysis of sequential programs to accommodate the specific needs of analysis tools like debuggers and slicers, but also to compensate for the continuous growth of programs and program complexity making static program analyses more and more intricate and time consuming. Particularly successful in practi...
متن کاملInterprocedural Dataflow Analysis via Graph Reachability
This paper shows how a large class of interprocedural dataflow-analysis problems can be solved precisely in polynomial time. The only restrictions are that the set of dataflow facts is a finite set, and that the dataflow functions distribute over the confluence operator (either union or intersection). This class of problems includes—but is not limited to—the classical separable problems (also k...
متن کامل- 1 - Demand Interprocedural Dataflow Analysis
An exhaustive dataflow analysis algorithm associates with each point in a program a set of “dataflow facts” that are guaranteed to hold whenever that point is reached during program execution. By contrast, a demand dataflow analysis algorithm determines whether a single given dataflow fact holds at a single given point. This paper presents a new demand algorithm for interprocedural dataflow ana...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1994